1. Field of the Invention
The present invention relates generally to an improved data processing system, and in particular, to a computer implemented method, apparatus, and computer usable program code for faster data communication. Still more particularly, the present invention relates to a computer implemented method, apparatus, and computer usable program code for improving the data communication between network adapters in a bridged network by providing direct access to the transmit and receive buffers of a network adapter to the other bridged network adapters.
2. Description of the Related Art
Technology exists to partition a single server data processing system such that the single server data processing system functions as multiple independent virtual servers, or logical partitions. Each logical partition, or virtual server, is a logical partitioned data processing system (LPAR). In a logical partitioned data processing system, the various logical partitions communicate with each other and outside networks, like the Internet, using network adapters. These network adapters can be physical network adapters, such as a physical Ethernet adapter. These network adapters can also be virtual network adapters, such as a virtual Ethernet adapter. Virtual network adapters are network adapters implemented in software, but appear and behave like physical network adapters from the point of view of a logical partition.
A network bridge is a device that connects two or more network components, such as two or more network adapters. A network bridge, which is also referred to simply as a bridge, manages the network data traffic flowing between connected network components. This function of the bridge is called bridging. The connected network components are called bridged components, and the network that results from bridging several network components via a network bridge is called a bridged network.
Similar to the network adapters, network bridges can also be physical or virtual in nature. A virtual network bridge is a network bridge implemented in software. A virtual network bridge is also referred to as a virtual bridge. In effect, a virtual bridge, such as a virtual Ethernet bridge, appears and behaves like a physical network bridge from the point of view of a bridged network.
Usually, a virtual bridge facilitates connectivity amongst the several virtual and physical network adapters in a logical partitioned data processing system. One or more logical partitions in a logical partitioned data processing system can host one or more virtual bridges. One logical partition hosting one virtual bridge for several logical partitions in a logical partitioned data processing system environment is a common bridging configuration. The logical partition that hosts the virtual bridge in such configurations is called the hosting partition.
In a logical partitioned data processing system, network adapters, whether physical or virtual, pass all packets of data to the virtual bridge for further distribution. The virtual bridge then processes the data packets for sending to other network adapters, or to the hosting partition for use locally on the hosting partition. The virtual bridge uses bridging logic to perform this processing. The bridging logic is a part of an operating system provided functionality called a host operating system stack, which contains the bridging logic for managing data communication in a data processing system.